package mine.code.day.year2021.month09;

import org.junit.Test;

import java.util.Arrays;

/**
 * 设计一个算法，找出数组中最小的k个数。以任意顺序返回这k个数均可。
 * <p>
 * 示例：
 * <p>
 * 输入： arr = [1,3,5,7,2,4,6,8], k = 4
 * 输出： [1,2,3,4]
 *
 * @author caijinnan
 */
public class Day03_最小K个数 {

    @Test
    public void run() {
        int[] arr = {1, 3, 5, 7, 2, 4, 6, 8};
        int k = 4;
        System.out.println(Arrays.toString(smallestK(arr, k)));
    }


    public int[] smallestK(int[] arr, int k) {
        int[] vec = new int[k];
        Arrays.sort(arr);
        System.arraycopy(arr, 0, vec, 0, k);
        return vec;
    }


}
